package com.charley.icloud.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
@TableName("sys_log")
public class SysLogEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * ID，自增
     * */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 方法操作名称
     * */
    @TableField(value = "name")
    private String name;

    /**
     * 日志类型 0登陆日志 1操作日志
     * */
    @TableField(value = "log_type")
    private Integer logType;

    /**
     * 请求路径
     * */
    @TableField(value = "request_url")
    private String requestUrl;

    /**
     * 请求类型
     * */
    @TableField(value = "request_type")
    private String requestType;

    /**
     * 请求参数
     * */
    @TableField(value = "request_param")
    private String requestParam;

    /**
     * 响应结果内容
     * */
    @TableField(value = "response_rest")
    private String responseRest;

    /**
     * 请求用户
     * */
    @TableField(value = "username")
    private String username;

    /**
     * 请求用户账号
     * */
    @TableField(value = "user_account")
    private String userAccount;

    /**
     * ip
     * */
    @TableField(value = "ip")
    private String ip;
    /**
     * ip信息
     * */
    @TableField(value = "ip_info")
    private String ipInfo;

    /**
     * 花费时间
     * */
    @TableField(value = "cost_time")
    private Integer costTime;

    /**
     * 删除状态：1删除，0未删除
     * */
    @TableField(value = "del_flag")
    @TableLogic(value = "0",delval = "1")
    private Integer delFlag = 0;

    /**
     * 创建人用户名
     * */
    @TableField(value = "create_by")
    private String createBy;

    /**
     * 创建时间
     * */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",locale = "zh",timezone = "GMT+8")
    @TableField(value = "create_time")
    private Date createTime;

    /**
     * 更新人
     * */
    @TableField(value = "update_by")
    private String updateBy;

    /**
     * 更新时间
     * */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",locale = "zh",timezone = "GMT+8")
    @TableField(value = "update_time")
    private Date updateTime;

    /**
     * 结果标志：0成功 1失败
     * */
    @TableField(value = "remark")
    private int remark = 0;
}
